-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: crash on delete DataSet #1531
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1531 +/- ##
==========================================
- Coverage 85.17% 85.09% -0.08%
==========================================
Files 562 563 +1
Lines 28074 28157 +83
Branches 7722 7240 -482
==========================================
+ Hits 23911 23961 +50
- Misses 3860 4040 +180
+ Partials 303 156 -147
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
codap-v3 Run #4528
Run Properties:
|
Project |
codap-v3
|
Branch Review |
main
|
Run status |
Passed #4528
|
Run duration | 09m 40s |
Commit |
b76f82aad1: fix: crash on delete DataSet (#1531)
|
Committer | Kirk Swenson |
View all properties for this run ↗︎ |
Test results | |
---|---|
Failures |
0
|
Flaky |
0
|
Pending |
30
|
Skipped |
0
|
Passing |
227
|
View all changes introduced in this branch ↗︎ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍🏻LGTM
There were several things going on here:
GraphDataConfigurationModel
's attempt to synchronize itsfilteredCases
array after itsDataSet
was destroyed.Once that was fixed, there were still several clients that were attempting to access the defunct
DataSet
triggering warnings. These have also been fixed:FilteredCases
class now responds to disposal of itsDataSet
, thus preventing further access.CaseTile
'sHideShowMenuList
checks whether itsDataSet
is alive before accessing it. (We conventionally avoidisAlive
in models, but in components there often isn't a better way.)CountAdornmentComponent
was properly usingmstAutorun
, but the model it was attached to was theCountAdornmentModel
, not the axis models that were also accessed within theautorun
.mstAutorun
andmstReaction
have been extended to support an array of model dependencies or a single model and so now theCountAdornmentComponent
can specify all of its model dependencies. (I have wondered for some time whether we would ever encounter a situation in which a single model dependency was insufficient for these utilities and now we have.)